#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import sqlite3

class oesdb:
    
    def verbindungherstellen(self):
        self.verbindung = sqlite3.connect("datenbank.db")
        self.cursor = self.verbindung.cursor()
        
    def verbindungschliessen(self):
        self.cursor.close()
        self.verbindung.close()
        
    
    def __init__(self):
        pass
            
            
    def add(self, name, liste):
        self.verbindungherstellen()
        werte = {}
        for i in range(0, len(liste)):
            istr = str(i)
            werte.update({istr : liste[i]})
        sql = "INSERT INTO " + name + " VALUES (:0"
        for i in range(1, len(liste)):
            sql = sql + ", :" + str(i) 
        sql = sql + ")"
        self.cursor.execute(sql, werte)
        self.verbindung.commit()
        self.verbindungschliessen()
        
    def read(self, name):
        
        self.verbindungherstellen()
        sql = "SELECT * FROM " + name
        self.cursor.execute(sql)
        daten = {}
        i = 0
        for row in self.cursor:
            liste = list(row)
            for j in range(0, len(liste)):
                liste[j] = (self.cursor.description[j][0], liste[j])
                
            liste = tuple(liste)    
                       
            daten.update({i : liste})
            i = i + 1
        
            
        self.verbindungschliessen()
        
        return daten
        
            
    def delete(self, name, name2):
        
        self.verbindungherstellen()
        werte = {"name2" : name2}
        sql = "DELETE FROM " + name + " WHERE name=(:name2)"
        self.cursor.execute(sql, werte)
        self.verbindung.commit()
        self.verbindungschliessen()
        
    def deleteall(self, name):

        self.verbindungherstellen()
        sql = "DELETE FROM " + name
        self.cursor.execute(sql)
        self.verbindung.commit()
        self.verbindungschliessen()
        
        
        